package com.easylinkin.linkappapi.lobar.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.easylinkin.linkappapi.lobar.dto.UserProjectDTO;
import com.easylinkin.linkappapi.lobar.entity.Gate;
import com.easylinkin.linkappapi.lobar.entity.UserProject;
import com.easylinkin.linkappapi.lobar.entity.emp.EmpUserBase;
import com.easylinkin.linkappapi.lobar.entity.emp.EmpUserBaseQuery;
import com.easylinkin.linkappapi.lobar.entity.vo.EmpUserBaseVO;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @Author: kan yuanfeng
 * @Date: 2022/4/19 11:47
 * @Description:
 */
public interface EmpUserBaseMapper  extends BaseMapper<EmpUserBase> {

  IPage<EmpUserBase> getBaseUsers(Page page, @Param("userProject") UserProject userProject);

  /**
   * @Description: 根据班组id查询，不分页
   * @author kan yuanfeng
   * @date 2020/11/04 11:42
   */
  List<EmpUserBase> queryByGroupId(@Param("userProject")UserProjectDTO userProjectDTO);

  List<EmpUserBase> queryByGate(Gate gate);

  IPage<EmpUserBase> queryListByPage(Page page, @Param("user") EmpUserBase empUserBase);

  /**
   * 获取人员
   *
   * @param query
   * @return EmpUserBaseVO
   * @author kyj
   * @date 2024/5/31 11:19
   */
  EmpUserBaseVO getExistByQuery(@Param("query") EmpUserBaseQuery query);
}
